package cn.ware.house.interfaces.service.inboundservice.impl;

import cn.ware.house.interfaces.entity.inventory.InboundProductStyle;
import cn.ware.house.interfaces.mapper.inboundmapper.InboundProductStyleMapper;
import cn.ware.house.interfaces.service.inboundservice.InboundProductStyleService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;

@Service
public class InboundProductStyleServiceImpl implements InboundProductStyleService {

    @Resource
    private InboundProductStyleMapper inboundProductStyleMapper;

    // 根据入库产品样式编号查询样式信息
    @Override
    public InboundProductStyle getInboundProductStyleById(Integer id) {
        return inboundProductStyleMapper.selectInboundProductStyleById(id);
        // 调用数据访问层方法，根据传入的入库产品样式编号查询对应的样式信息
    }

    // 根据入库产品编号查询该产品的所有样式信息
    @Override
    public List<InboundProductStyle> getInboundProductStylesByProductId(Integer productId) {
        return inboundProductStyleMapper.selectInboundProductStylesByProductId(productId);
        // 调用数据访问层方法，根据传入的入库产品编号查询该产品对应的所有样式信息
    }

    // 插入入库产品样式信息
    @Override
    public boolean addInboundProductStyle(InboundProductStyle inboundProductStyle) {
        int result = inboundProductStyleMapper.insertInboundProductStyle(inboundProductStyle);
        return result > 0;
        // 调用数据访问层的插入方法，将入库产品样式信息插入数据库，根据受影响的行数判断插入是否成功
    }

    // 根据入库产品样式编号更新样式信息
    @Override
    public boolean updateInboundProductStyleById(InboundProductStyle inboundProductStyle) {
        int result = inboundProductStyleMapper.updateInboundProductStyleById(inboundProductStyle);
        return result > 0;
        // 调用数据访问层的更新方法，根据传入的入库产品样式信息更新数据库中对应的记录，根据受影响的行数判断更新是否成功
    }

    // 根据入库产品样式编号删除样式信息
    @Override
    public boolean deleteInboundProductStyleById(Integer id) {
        int result = inboundProductStyleMapper.deleteInboundProductStyleById(id);
        return result > 0;
        // 调用数据访问层的删除方法，根据传入的入库产品样式编号删除数据库中对应的记录，根据受影响的行数判断删除是否成功
    }
}